---
id: 655a14a6fe4cd50f38d01dd3
title: Крок 13
challengeType: 20
dashedName: step-13
---

# --description--

Тепер потрібно перевірити, чи параметр `node` є `None`. Якщо так, то метод досягнув кінцевого вузла або порожнього місця в дереві, куди потрібно вставити новий вузол.

В межах тіла методу напишіть інструкцію `if`, яка перевіряє, чи `node is None`. В межах блоку `if` поверніть `TreeNode(key)`, щоб створити новий екземпляр `TreeNode` з наданим ключем. Він стане новим кінцевим вузлом, тим самим вставляючи ключ у дерево.

# --hints--

Напишіть інструкцію `if`, щоб перевірити, чи `node is None`.

```js
({ test: () =>
  {
    const transformedCode = code.replace(/\r/g, "");        
    const ins = __helpers.python.getDef("\n"+transformedCode, "_insert");
    const {function_body} = ins;    
    assert(function_body.match(/^\s{8}if\s+node\s+is\s+None\s*:/m));
  }
})
```

Поверніть `TreeNode(key)` з блоку `if`.

```js
({ test: () =>
  {
    const transformedCode = code.replace(/\r/g, "");        
    const ins = __helpers.python.getDef("\n"+transformedCode, "_insert");
    const {function_body} = ins;    
    assert(function_body.match(/^(\s{8})if\s+node\s+is\s+None\s*:\s*^\1\s{4}return\s+TreeNode\s*\(\s*key\s*\)/m));
  }
})
```

# --seed--

## --seed-contents--

```py
class TreeNode:
    def __init__(self, key):
        self.key = key
        self.left = None
        self.right = None

class BinarySearchTree:
    def __init__(self):
        self.root = None

    def insert(self,key):
        self.root = self._insert(self.root, key)

--fcc-editable-region--
    def _insert(self, node, key):
        pass
--fcc-editable-region--
```
